/**
 * 
 */
package Exceptions;

import squarePackage.SquareImp;
import be.kuleuven.cs.som.annotate.Basic;
import Dungeon.Dungeon;
import Dungeon.CompositeDungeon;

/**
 * @author Pieter
 *
 */
public class IllegalDungeonException extends Exception {
	
	/**
	 *A variable to store the dungeon that caused this illegal dungeon exception 
	 */
	private Dungeon<SquareImp> dungeon;
	
	/**
	 * A constructor to initialize this illegal dungeon exception
	 * 
	 * @param 	compositeDungeon
	 * 			the dungeon that triggers the illegal dungeon exception
	 * @post	...
	 * 			new.getDungeon()= dungeon
	 */
	public IllegalDungeonException(Dungeon<SquareImp> dungeon){
		this.setDungeon(dungeon);
		
	}
	
	public IllegalDungeonException(){
		
	}
	
	

	

	/**
	 * Returns the dungeon that triggered the illegal dungeon exception
	 */
	@Basic
	public Dungeon<SquareImp> getDungeon(){
		return this.dungeon;
	}
	
	/**
	 * A method to set the dungeon for this illegal dungeon exception
	 * 
	 * @param	dungeon
	 * 			the dungeon for this illegal dungeon exception
	 * @post	...
	 * 			|new.getDungeon() = dungeon
	 */
	public void setDungeon(Dungeon<SquareImp> dungeon){
		this.dungeon = dungeon;
	}

}
